Proof-Carrying Model-Transformation Components
نویسندگان
چکیده
As model transformations become a more common tool in a software engineer’s toolbox, there is an increasing need for systematic development techniques for them. Among other things, it becomes increasingly important to be able to safely modularise a model transformation specification as well as to compose new transformations from pre-existing transformation modules. While some initial work has been done to allow transformations to be expressed in a more modular fashion, reuse of such modules requires great care as there is no formal semantics nor a notion of contracts. We present an encoding of model transformations based on constructive type theory. In particular, this allows us to provide formal semantics to transformation modules including an explicit representation and verification of the dependencies of a model-transformation module.
منابع مشابه
Implementation of a Lean Model for Carrying out Value Stream Mapping in a Manufacturing Industry
Value Stream Mapping technique involves flowcharting the steps, activities, material flows, communications, and other process elements that are involved with a process or transformation. In this respect, Value stream mapping helps an organization to identify the non-value-adding elements in a targeted process and brings a product or a group of products that use the same resources through the ma...
متن کاملCertificates and Separation Logic
Modular and local reasoning about object-oriented programs has been widely studied for programing languages such as C# and Java. Once source programs have been proven, the next verification challenge is to ensure that the code produced by the compiler is correct. Since verifying a compiler can be extremely complex, this paper uses proof-transforming compilation, an alternative approach which au...
متن کاملProof Planning with Schema Frameworks ?
Recently, schema-based program transformation and synthesis techniques have received a lot of attention, especially at LOPSTR. It seems that schema-based techniques often fall into one of two categories: either they are pragmatic, designed for carrying out real program transformation or synthesis operations, but lacking the logical basis that they need to ensure that they really do synthesise/t...
متن کاملBytecode Analysis for Proof Carrying Code
Out of annotated programs proof carrying code systems construct and prove verification conditions that guarantee a given safety policy. The annotations may come from various program analyzers and must not be trusted as they need to be verified. A generic verification condition generator can be utilized such that a combination of annotations is verified incrementally. New annotations may be veri...
متن کاملCombining Verification and MDE Illustrated by a Formal Java Development
Formal methods are increasingly used in software engineering. They offer a formal frame that guarentees the correctness of developments. However, they use complex notations that might be difficult to understand for unaccustomed users. It thus becomes interesting to formally specify the core components of a language, implement a provably correct development, and manipulate its components in a gr...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2011